package com.yellowpage.wf.service;

import java.util.List;
import java.util.Map;

import com.yellowpage.white.common.PageRender;
import com.yellowpage.white.service.BaseService;

import com.yellowpage.wf.data.Workflow;
import com.yellowpage.wf.data.WorkflowInstance;
import com.yellowpage.wf.data.WorkflowNode;
import com.yellowpage.wf.data.WorkflowNodeInstance;

public interface WorkflowInstanceService extends BaseService {  

    /* White generate Method */ 
    public WorkflowInstance getWorkflowInstance(Long id);
    public List<WorkflowInstance> getAllWorkflowInstance();
    public List<Map> queryWorkflowInstanceByPage(Map queryMap, PageRender pageRender);
    public void saveWorkflowInstance(WorkflowInstance workflowInstance);
	public void updateWorkflowInstance(WorkflowInstance workflowInstance);
	public void delete(List deleteList);
	public WorkflowInstance mergeWorkflowInstance(WorkflowInstance workflowInstance);
	

	/**
	 * 启动一个工作流实例
	 *
	 * @param workflowInstance
	 * <br>
	 * 工作流ID必须设置，不可以为空
	 */
	public void startWorkflowInstance(WorkflowInstance workflowInstance);
	public void startWorkflowInstance(WorkflowInstance intance , String uniqueContextParamName , String uniqueContextParamValue);
	/**
	 * 执行工作流实例对象的流转操作
	 *
	 * @param workflowInstance
	 */
	

}
  

